$OpenBSD: patch-bin_duplicity,v 1.9 2016/08/09 11:16:53 danj Exp $
--- bin/duplicity.orig	Sun Jul 24 18:27:49 2016
+++ bin/duplicity	Wed Aug  3 18:47:34 2016
@@ -1268,10 +1268,12 @@ def check_resources(action):
                            log.ErrorCode.get_ulimit_failed)
         maxopen = min([l for l in (soft, hard) if l > -1])
         if maxopen < 1024:
-            log.FatalError(_("Max open files of %s is too low, should be >= 1024.\n"
-                             "Use 'ulimit -n 1024' or higher to correct.\n") % (maxopen,),
-                           log.ErrorCode.maxopen_too_low)
-
+            try:
+              resource.setrlimit(resource.RLIMIT_NOFILE, (1024, hard))
+            except resource.error:
+                log.FatalError(_("Max open files of %s is too low, should be >= 1024.\n"
+                               "Use 'ulimit -n 1024' or higher to correct.\n") % (maxopen,),
+                               log.ErrorCode.maxopen_too_low)
 
 def log_startup_parms(verbosity=log.INFO):
     """
